Skip to content

Conversation

@graytaylor0
Copy link
Member

@graytaylor0 graytaylor0 commented Nov 7, 2025

Description

This change fixes a potential data loss scenario where shards can be skipped completely on this condition in ShardConsumer (

LOG.info("LastShardIterator is provided, but there is no Last Event Time, skip processing");
). This data loss can happen if the partitions for the shards are created in source coordination after the shard has already closed (in the case that a child shard is already closed by the time data prepper fully processes the parent shard).

Check List

  • New functionality includes testing.
  • New functionality has a documentation issue. Please link to it in this PR.
    • New functionality has javadoc added
  • Commits are signed with a real name per the DCO

By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.
For more information on following Developer Certificate of Origin and signing off your commits, please check here.

@graytaylor0 graytaylor0 force-pushed the DdbShardSkipFix branch 2 times, most recently from dbe3a79 to 9644d0a Compare November 11, 2025 17:54
@graytaylor0 graytaylor0 changed the title Do not set ending sequence number for child shard partitions discovered after initial scan for shards Get last shard iterator at sequence number for closed shards Nov 11, 2025
…ing sequence numbers

Signed-off-by: Taylor Gray <tylgry@amazon.com>
@graytaylor0 graytaylor0 merged commit ca7168c into opensearch-project:main Nov 11, 2025
46 of 47 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants